﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MX.Core.SQLGeneration
{
    public class Resources
    {
        public const string UnknownTokenType = "Encountered an unknown token type.";
        public const string UnknownDistinctQualifier = "Encountered an unknown distinct qualifier.";
        public const string BlankTableName = "Encountered a null or blank table name.";
        public const string BlankDataType = "Encountered a null or blank datatype name.";
        public const string NoQueries = "An attempt was made to build a compound command without any commands.";
        public const string NegativeRowCount = "The row count cannot be negative when defining a bound function window frame.";
        public const string UnexpectedToken = "Encountered unexpected token: {0}.";
        public const string DuplicateTokenDefinition = "An attempt was made to define two tokens with the same name: {0}.";
        public const string UnknownOrder = "Encountered an unknown ordering.";
        public const string UnknownNullPlacement = "Encountered an unknown null placement.";
        public const string EmptyFilterGroup = "An attempt was made to build an empty filter clause.";
        public const string BlankSchemaName = "Encountered a null or blank schema name.";
        public const string BlankExpressionType = "Encountered a null or blank expression type.";
        public const string UnknownQuantifier = "Encountered an unknown quantifier.";
        public const string UnknownFrameType = "Encountered an unknown windowed function frame type.";
        public const string BlankParameterPrefix = "Encountered a null or blank parameter prefix.";
        public const string AliasRequired = "A reference was made to a source without defining an alias for it.";
        public const string BlankFunctionName = "Encountered a null or blank function name.";
        public const string BlankParameterName = "Encountered a null or blank parameter name.";
        public const string EmptyOnExpression = "An attempt was made to build a join without any filters.";
        public const string EmptyNamespace = "An attempt was made to specify an empty namespace.";
        public const string UnknownSource = "An attempt was made to retrieve an column source: {0}.";
        public const string DuplicateExpressionItemName = "An attempt was made to define two expressions items with the same name.";
        public const string EmptyCaseExpression = "An attempt was made to create a case expression without any cases.";
        public const string MissingHandlers = "Not all expression types have a handler assigned to them.";
        public const string NoProjections = "An attempt was made to build a select command without any projections.";
        public const string NoSetters = "An attempt was made to build an update statement without any setters.";
        public const string UnknownConjunction = "Encountered an unknown conjunction type.";
        public const string BlankColumnName = "Encountered a null or blank column name.";
        public const string BlankItemName = "Encountered a null or blank expression item name.";
        public const string DuplicateSourceName = "Encountered a duplicate source name: {0}. Use an alias to distinguish between multiple references to the same table.";
        public const string BlankTokenValue = "Encountered a null or blank expected token value.";

    }
}
